

#ifndef __FLAG_H__
#define __FLAG_H__

#define BIT_FLAG_SIZE (10U) /* bit flag resource size. */
void bit_flag_init(void);
int set_bit_flag(unsigned char bit, unsigned char value);
int get_bit_flag(unsigned char bit);

#define UCHAR_FLAG_SIZE (10U) /* uchar flag resource size. */
void uchar_flag_init(void);
int set_uchar_flag(unsigned char pos, unsigned char value);
int get_uchar_flag(unsigned char pos);

#define USHORT_FLAG_SIZE (10U) /* ushort flag resource size. */
void ushort_flag_init(void);
int set_ushort_flag(unsigned char pos, unsigned short value);
int get_ushort_flag(unsigned char pos);

#define UINT_FLAG_SIZE (10U) /* uint flag resource size. */
void uint_flag_init(void);
int set_uint_flag(unsigned char pos, unsigned int value);
int get_uint_flag(unsigned char pos);

#endif
